Snowflakeの新UI「Snowsight」でロード履歴を可視化してみた
こんにちは!エノカワです。
Snowflakeの新しいUI「Snowsight」がプレビュー機能で公開されています。
Snowsightではグラフとダッシュボードを使用して、データの可視化をすることができますが、
今回はデータそのものの可視化ではなく、データのロード履歴の可視化を試してみました。
Snowsightの簡単な利用方法などについてはこちらの記事にも記載しています。
準備
サンプルデータベースSNOWFLAKE_SAMPLE_DATA
のTPCH_SF1.ORDERS
を利用します。
TPCH_SF1.ORDERS
のデータを別のテーブルにロードし、その履歴を可視化してみましょう。
Snowsightのワークシート上で、以下のクエリを実行していきます。
ウェアハウス作成
検証で使用するウェアハウスDEMO_WH
を作成します。
create or replace warehouse DEMO_WH with WAREHOUSE_SIZE = 'XSMALL' WAREHOUSE_TYPE = 'STANDARD' AUTO_SUSPEND = 600 AUTO_RESUME = TRUE MIN_CLUSTER_COUNT = 1 MAX_CLUSTER_COUNT = 2 SCALING_POLICY = 'STANDARD' ; use warehouse DEMO_WH;
データベース作成
検証で使用するデータベースDEMO_DB
を作成します。
create or replace database DEMO_DB; use DEMO_DB;
テーブル作成
検証で使用するテーブルORDERS_REPORT
を作成します。
テーブルの構造はTPCH_SF1.ORDERS
と同じです。
create or replace table ORDERS_REPORT like SNOWFLAKE_SAMPLE_DATA.TPCH_SF1.ORDERS;
データのアンロード
TPCH_SF1.ORDERS
からデータをアンロードします。
アンロード先は作成したORDERS_REPORT
のテーブルステージにします。
copy into @%ORDERS_REPORT from SNOWFLAKE_SAMPLE_DATA.TPCH_SF1.ORDERS file_format = (type = CSV compression = 'GZIP');
データのロード
ORDERS_REPORT
のテーブルステージからデータをロードします。
次のステップでは、このロード履歴を可視化します。
copy into ORDERS_REPORT from @%ORDERS_REPORT file_format = (type = CSV compression = 'GZIP');
ロード履歴の可視化
それではORDERS_REPORT
テーブルのロード履歴を可視化してみましょう。
COPY_HISTORYテーブル関数
ロード履歴を取得するために、COPY_HISTORY
テーブル関数を使用します。
引数にテーブル名と対象期間を指定すると、ロード履歴をクエリすることができます。
グラフの表示
COPY_HISTORY
テーブル関数を使用して、
ORDERS_REPORT
テーブルの直近1時間のロード履歴をクエリしてみましょう。
ワークシート上で、以下のクエリを実行します。
select * from table(information_schema.copy_history( table_name=>'ORDERS_REPORT', start_time=> dateadd(hours, -1, current_timestamp())));
5個のファイルのロード履歴が取得できました。
Chartタブをクリックして、表示を切り替えてみましょう。
表示が横棒グラフに切り替わりました!
グラフの調整
画面右のDataセクションを見てみましょう。
ファイルごとの行数が可視化されていることが分かります。
データの並びがバーサイズの大きい順になっていますね。
ファイルの名前の順に変更してみましょう。
- 「Order bars by」を変更
- Bar size -> FILE_NAME
ついでに、並びも昇順に変えてみましょう。
- 「Order direction」を変更
- Descending -> Ascending
データの並びがファイルの名前で昇順に変わりました!
軸ラベルを表示することもできます。
- 「Label X-Axis」「Label Y-Axis」のチェックボックスをチェック
表示するデータを増やしてみましょう。
ファイルサイズのデータを追加してみます。
- Dataの「Add column」から「FILE_SIZE」を選択
黄色バーでデータが追加されました!
まとめ
以上、データのロード履歴の可視化を試してみました。
COPY_HISTORY
テーブル関数のクエリ結果から簡単にロード履歴を可視化することができました。
クエリ結果からワンクリックでグラフ表示に切り替えられるので、
ワークシート上で作業途中にデータの状態や履歴を可視化して確認するのに便利そうですね。
次回はクエリの履歴の可視化にチャレンジしてみたいと思います。